#ifndef __M_LEVEL_H__
#define __M_LEVEL_H__
/*
1.定义枚举类，枚举出日志等级
2.提供转换接口，将枚举转换位对应的字符串
*/
namespace logslearn
{
    // 等级模块
    class loglevel
    {
    public:
        // 定义枚举类
        enum class value
        {
            UNKNOW = 0, // 未知等级的日志
            DEBUG,      // 调试等级的日志
            INFO,       // 提示等级的日志
            WARN,       // 警告等级的日志
            ERROR,      // 错误等级的日志
            FATAL,      // 致命错误等级的日志
            OFF,        // 关闭所有⽇志输出
        };
        // 转换接口
        static const char *tostring(loglevel::value level)
        {
            switch (level)
            {
            case loglevel::value::DEBUG:
                return "DRBUG";
            case loglevel::value::INFO:
                return "INFO";
            case loglevel::value::WARN:
                return "WARN";
            case loglevel::value::ERROR:
                return "ERROR";
            case loglevel::value::FATAL:
                return "FATAL";
            case loglevel::value::OFF:
                return "OFF";
            }
            // 未知等级的打印
            return "UNKNOW";
        }
    };
}
#endif
